package com.haoze.nurseapp.dao;

import com.haoze.nurseapp.dto.MealListMainDTO;
import com.haoze.nurseapp.model.WardLogMenuEntity;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

public interface MealListMapper {
    List<Map<String,String>> queryMealList(@Param("wardDeptId") String wardDeptId,@Param("dateTime") String dateTime,
                                           @Param("wholeInpatNum") String wholeInpatNum);

    List<Map<String,String>> queryIllnessByInpatNum(@Param("inpatNums") List<String> inpatNums,@Param("dateTime") String dateTime);
    List<Map<String,String>> queryNursingGradeByInpatNum(@Param("inpatNums") List<String> inpatNums,
                                                         @Param("dateTime") String dateTime,
                                                         @Param("nursingGradeList") List<String> nursingGradeList);

    List<Map<String,String>> queryWardLogMenu(@Param("wardDeptId") String wardDeptId,@Param("dateTime") String dateTime,
                                              @Param("search") String search,@Param("wholeInpatNum") String wholeInpatNum);

    List<MealListMainDTO> getInpatNumByOrderItemId(@Param("wardDeptId") String wardDeptId, @Param("orderItems") List<Map<String,String>> orderItems,
                                                   @Param("dateTime") String dateTime,@Param("wholeInpatNum") String wholeInpatNum);

    String queryPatientInfoByWardDeptId(@Param("wardDeptId") String wardDeptId);
    String queryPatientMedicalNumByWardDeptId(@Param("wardDeptId") String wardDeptId,@Param("bedNo") String bedNo,@Param("keyWords") String keyWords);
    List<String> queryPatientByWardId(@Param("wardDeptId") String wardDeptId);

    int deleteWardLogMenu(@Param("userId") String userId,@Param("wardId") String wardId);

    int insertWardLogMenu(List<WardLogMenuEntity> wardLogMenuEntityList);

    List<WardLogMenuEntity> getWardLogMenuByNurseId(@Param("userId") String userId,@Param("wardId") String wardId);

    List<Map<String,String>> queryOperationInfoByInpatNum(@Param("inpatNums") List<String> inpatNums);

    String queryBedNoByInpatNum(@Param("inpatNum") String inpatNum);


    List<Map<String, Object>> getOperationArrangement(@Param("wardId") String wardId, @Param("wholeInpatNum") String wholeInpatNum,@Param("dateTime") String dateTime,@Param("keyWords") String keyWords);


}
